﻿/*
 * @Autor: PK
 * @Date: 2021/12/25 11:10:SS
 */

using System.Collections.Generic;
using System.Linq;
using GeneticAlgorithm.Components.Chromosomes;
using GeneticAlgorithm.Components.Interfaces;

namespace ShkSimulation.core.optimization.algorithm.classicGeneticAlgotithm {

	public class NamedVectorChromosome<T>: VectorChromosome<T> {
		
		public Dictionary<string, T> NamedVector { get; set; }

		public NamedVectorChromosome(Dictionary<string, T> vector, IMutationManager<T> mutationManager, IEvaluator evaluator) 
			: base(vector.Values.ToArray(), mutationManager, evaluator) {
			this.NamedVector = vector;
		}

	}

}